/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.put.netbeans.dcs_modeler.dataObjects;

import java.io.IOException;
import org.openide.filesystems.FileObject;
import org.openide.loaders.DataObjectExistsException;
import org.openide.loaders.MultiDataObject;
import org.openide.loaders.UniFileLoader;
import org.openide.util.NbBundle;

public class DCSComputingObjectDefinitionDataLoader extends UniFileLoader
{

    public static final String REQUIRED_MIME = "text/x-dcs-computing-object+xml";
    private static final long serialVersionUID = 1L;

    public DCSComputingObjectDefinitionDataLoader()
    {
        super( "org.put.netbeans.dcs_modeler.dataObjects.DCSComputingObjectDefinitionDataObject" );
    }

    @Override
    protected String defaultDisplayName()
    {
        return NbBundle.getMessage( DCSComputingObjectDefinitionDataLoader.class, "LBL_DCSComputingObjectDefinition_loader_name" );
    }

    @Override
    protected void initialize()
    {
        super.initialize();
        getExtensions().addMimeType( REQUIRED_MIME );
    }

    protected MultiDataObject createMultiObject( FileObject primaryFile ) throws DataObjectExistsException, IOException
    {
        return new DCSComputingObjectDefinitionDataObject( primaryFile, this );
    }

    @Override
    protected String actionsContext()
    {
        return "Loaders/" + REQUIRED_MIME + "/Actions";
    }
}
